With the increase in complexity of today's computer and internet applications, such applications are commonly divided into multiple services. For example, a news website may be divided into a service that updates a stock ticker, a service that retrieves sports scores, and other services that perform various functions for the news website. Dividing a complex application into multiple services allows the complex application to continue operating even though one or more of the services fails. That is, the complex application may still operate as a whole without the functionality of a failed service. Furthermore, the servers executing the services may be replicated to mitigate server hardware failures. For example, a single configuration may be replicated across all servers. If a server fails due to a hardware issue, then there are multiple other servers still operable to execute the services as needed. Accordingly, sports scores may continually be available to a website, for example, even if one server providing the sport score service fails. Unfortunately, however, if a service is executing on all servers and the service misbehaves, then potentially all of the servers may fail (e.g., a memory leak by a service may force the servers executing the service to become unresponsive and fail).